Module level redundancy for fuel cell systems

ABSTRACT

This disclosure relates to module level redundancy for fuel cell systems. A monitoring component monitors a set of operational parameters for a fuel cell group. The fuel cell group includes a set of fuel cell units, each having a set of fuel cell stacks. The fuel cell stacks include a set of gas powered fuel cells that convert air and fuel into electricity using a chemical reaction. The monitoring component determines that the set of operational parameters do not satisfy a set of operational criteria, and, in response, a load balancing component adjusts the electrical output capacity of the set of fuel cell units included in the fuel cell group.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.14/177,160, now U.S. Pat. No. 9,070,918, filed Feb. 10, 2014, titled“MODULE LEVEL REDUNDANCY FOR FUEL CELL SYSTEMS,” which is a continuationof U.S. patent application Ser. No. 13/546,992, now U.S. Pat. No.8,679,698, filed Jul. 11, 2012, titled “MODULE LEVEL REDUNDANCY FOR FUELCELL SYSTEMS”. The disclosure of the foregoing applications areincorporated herein by reference in their entirety for all purposes.

TECHNICAL FIELD

This disclosure generally relates to systems and methods that facilitatemodule level redundancy for fuel cell systems.

BACKGROUND

People currently have greater access to information and person-to-personconnectivity than ever before. Advances in computing technology and theinternet are continually changing the ways that people access and shareinformation. Millions of people have the capability to generate content,such as articles, songs, videos, etc. that can be shared with peopleacross the globe in almost real-time. In addition, the rapid growth ofmobile communication devices, such as smart phones and tablet computers,enable people to enjoy these services from anywhere in the world.

As the number of countries and people participating in the digitalrevolution increases, so does the demand for energy to power the devicesand technology. Experts predict that in the coming decades global energyconsumption may more than double. Cost associated with powering serversand other devices that form the backbone of on-line services represent amajor expense for operators. In addition, consumers expect on-lineservices and products to be continuously available. As a result, it iscritical for operators to have access to substantial amounts of reliableand affordable energy.

Typically, operators have limited options for powering servers andassociated equipment. Power is obtained from a local energy provider,and operators attempt to mitigate energy consumption cost by employingenergy efficient equipment. Recently, new developments in fuel celltechnology have generated promising developments for reducing energycost for large scale consumers. However, fuel cells require a wellmaintained infrastructure. Potential infrastructure failures andassociated maintenance requirements can result in undesirable down-timefor many operators.

SUMMARY

The following presents a simplified summary of the specification inorder to provide a basic understanding of some aspects of thespecification. This summary is not an extensive overview of thespecification. It is intended to neither identify key or criticalelements of the specification nor delineate any scope of particularimplementations of the specification, or any scope of the claims. Itssole purpose is to present some concepts of the specification in asimplified form as a prelude to the more detailed description that ispresented later.

According to an aspect of the subject innovation, systems and methodsfor module level redundancy for fuel cell systems are disclosed. In oneimplementation, a monitoring component monitors a set of operationalparameters for a fuel cell group. The fuel cell group includes a set offuel cell units, each having a set of fuel cell stacks. The fuel cellstacks include a set of gas powered fuel cells that convert air and fuelinto electricity using a chemical reaction. In one implementation, amonitoring component monitors a set of operational parameters for a fuelcell group, and determines that the operational parameters do notsatisfy a set of operational criteria, and in response to thedetermination that the set of operational parameters do not satisfy theset of operational criteria, a load balancing component adjusts theelectrical output capacity of a set of fuel cell units included in thefuel cell group.

The following description and the annexed drawings set forth certainillustrative aspects of the specification. These aspects are indicative,however, of but a few of the various ways in which the principles of thespecification may be employed. Other advantages and novel features ofthe specification will become apparent from the following detaileddescription of the specification when considered in conjunction with thedrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a non-limiting example of a system for module levelredundancy for fuel cell systems in accordance with various aspectsdescribed in this disclosure;

FIG. 2 illustrates a non-limiting example of a system for module levelredundancy for fuel cell systems in accordance with various aspectsdescribed in this disclosure;

FIG. 3 illustrates an example system for module level redundancy forfuel cell systems in accordance with various aspects described in thisdisclosure;

FIG. 4 illustrates an example monitoring component in accordance withvarious aspects described in this disclosure;

FIG. 5 illustrates an example load balancing component in accordancewith various aspects described in this disclosure;

FIG. 6 illustrates an example switching component in accordance withvarious aspects described in this disclosure;

FIGS. 7-9 are example flow diagrams of respective methods for modulelevel redundancy for fuel cell systems in accordance with variousaspects described in this disclosure;

FIG. 10 is a block diagram representing an exemplary non-limitingnetworked environment in which the various embodiments can beimplemented; and

FIG. 11 is a block diagram representing an exemplary non-limitingcomputing system or operating environment in which the variousembodiments may be implemented.

DETAILED DESCRIPTION

Overview

The innovation is now described with reference to the drawings, whereinlike reference numerals are used to refer to like elements throughout.In the following description, for purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of this innovation. It may be evident, however, that theinnovation can be practiced without these specific details. In otherinstances, well-known structures and devices are shown in block diagramform in order to facilitate describing the innovation.

As noted in the Background section, fuel cells require a well maintainedinfrastructure. Potential infrastructure failures, and associatedmaintenance requirements can result in undesirable down-time for manyoperators. In accordance with an implementation, a monitoring componentmonitors a set of operational parameters for a fuel cell group, anddetermines that the operational parameters do not satisfy a set ofoperational criteria, and in response to the determination that the setof operational parameters do not satisfy the set of operationalcriteria, a load balancing component adjusts the output capacity of aset of fuel cell units included in the fuel cell group.

Non-Limiting Examples of Module Level Redundancy for Fuel Cell Systems

Turning now to FIG. 1, illustrated is a non-limiting example of a system100 for module level redundancy for fuel cell systems in accordance withvarious aspects described in this disclosure. The system 100 includes aset of fuel sources 102, including, e.g., in FIG. 1 a first fuel source102A, a second fuel source 102B, and an N^(th) fuel source 102C, where Nis an integer. The fuel sources 102A-C (sources 102A-C) supply, deliver,or otherwise provide fuel to an associated fuel cell unit (unit). Forexample, the first source 102A provides fuel to a first unit 104, thesecond source 102B provides fuel to a second unit 106, and the N^(th)source 102C provides fuel to an N^(th) unit 108. The fuel can includebut is not limited to natural gas, compressed natural gas (CNG), and/orliquid natural gas (LNG). For instance, the first source 102A caninclude fuel provided by a utility provider, the second source 102B caninclude CNG maintained in a storage tank, and the N^(th) source 102C caninclude LNG maintained in a storage tank.

The fuel cell units 104-108 each include a set of fuel cell stacks(e.g., six stacks per unit), and each of the fuel cell stacks includes aset of fuel cells (e.g., 1000 fuel cells per stack) (discussed ingreater detail with reference to FIG. 2). The fuel cells can include butare not limited to gas powered fuel cells. For example, in oneimplementation, the fuel cells include solid oxide fuel cells. Gaspowered fuel cells convert fuel and air into electricity using anelectro-chemical reaction. The quantity of fuel cells included in thefuel cell stacks, and/or the quantity of fuel cell stacks included in aunit (e.g., unit 104-108) can be a function of a desired rate ofconversion to electrical energy (e.g., desired Wattage or Watts) to begenerated by the units 104-108. For example, each fuel cell can generate33 watts. Each fuel cell stack aggregates or combines the electricalenergy generated by the individual fuel cells included the stack, andproduces a fuel cell stack output of about 33 kW (e.g., 33 watts×1000cells), and the units combine the energy output from each stack toproduce a unit output of about 200 kW (e.g., 33 kW×6 stacks).

The fuel cell units 104-108 communally provide electrical energy to aload 110 via a common power bus 112 (bus 112). Providing separatesources 102A-C for each of the units 104-108 segregates, insulates, orotherwise compartmentalizes the units 104-108, and enables uninterruptedservice to the load 110 in the event of a disruption of fuel from asource 102A-C, a unit 104-108 being taken offline for maintenance,and/or unit 104-108 experiencing a malfunction. The units 104-108operate at an optimal efficiency when provided with a predeterminedamount of fuel and/or air (e.g., optimal fuel-air setting). For example,the units 104-108 can each produce 200 kW of electricity at the optimalfuel-air setting. Modifying, altering or otherwise adjusting the fueland/or air provided to a unit 104-108 can increase (or decrease) theelectrical output capacity of the unit 104-108. In addition, adjustingthe fuel and/or air provided to the unit 104-108 can cause the unit104-108 to operate at a lower efficiency. For instance, increasing thefuel provided to the unit 104 may increase the output capacity of theunit 104 from 200 kW to 230 kW; however, the amount of heat generated bythe fuel cells included in the unit 104, and/or the amount of fuel thatexperiences a less than optimal conversion may increase.

It may be desirable to operate one or more of the units 104-108 at ahigher output capacity (and lower efficiency) to compensate for anotherunit. For instance, if unit 108 goes offline (e.g., is taken down formaintenance, or losses a set of cells or a stack), then the outputcapacity of the remaining fuel cell units (e.g., units 104 and 106) canbe increased to compensate for the loss of the output capacity of fuelcell unit 108 by adjusting the fuel and/or air provided to the remainingfuel cell units. Increasing the output of the remaining fuel cell unitsmay enable continued operation of the load 110, until the unit 108 canbe repaired or brought back online. For example, if the load 110includes a set of network servers, then an operator may desire to havethe set of network servers continuously operating without interruption.

FIG. 2 illustrates a non-limiting example of a system 200 for modulelevel redundancy for fuel cell systems in accordance with variousaspects described in this disclosure. The system 200 includes a set offuel sources, including, e.g., in FIG. 2, a first fuel source 102A, asecond fuel source 102B, a Nth fuel source 102C, where N is an integer.The fuel sources 102A-C (sources 102A-C) provide fuel to a set ofassociated fuel cell units 104-108 (units 104-108). For example, thefirst source 102A provides fuel to a first set of units 104A-C (e.g.,Unit A), the second source 102B provides fuel to a second set of units106A-C (e.g., Unit B), and the N^(th) source 102C provides fuel to aN^(th) set of units 108A-C (e.g., Unit N).

The units are arranged, organized, or otherwise grouped into a set ofgroups 206A-C. Each of the groups 206A-C includes one unit from each ofthe sets of units 104-108. For example, a first group 206A includes afirst unit 104A (e.g., Unit A) in the first set of units, a first unit106A (e.g., Unit B) in the second set of units, and a first unit 108A(e.g., Unit N) in the N^(th) set of units. Each group 206 aggregates orcombines electrical energy produced by respective units included in thegroup 206, and communally provides the electrical energy to a load 110via a common bus 112.

As discussed, providing separate sources 102A-C for each of the sets ofunits 104-108 compartmentalizes the sets of units 104-108, and enablesuninterrupted service to the load 110 in the event of a disruption offuel from a source 102A-C, and/or an offline unit 104-108. For example,if the first fuel source 102A experiences a malfunction, then each unit104A-C (e.g., Unit A) included in the first set of units 104 may gooffline. In response to the first set of units 104A-C going offline, theoutput capacity of the remaining units 106-108 in each group 206A-C canbe increased to compensate for the units 104A-C. For instance, theoutput capacity of the remaining units 106-108 can be increased byadjusting the fuel and/or air provided to the units 106-108. Increasingthe output capacity of the units 106-108 may enable continued operationof the load 110, until the source 102A can be repaired and/or broughtback online. For example, if the load 110 includes a hospital, then itmay be necessary for the hospital to have power continuously withoutinterruption. Aspects of the invention are not limited to a quantity ofgroups. For example, there can be X groups, where X is an integer.

Turning now to FIG. 3, illustrated is an example system 300 for modulelevel redundancy for fuel cell systems in accordance with variousaspects described in this disclosure. Generally, system 300 can includea memory that stores computer executable components and a processor thatexecutes computer executable components stored in the memory, examplesof which can be found with reference to FIG. 11. The system 300 includesa control component 302, and a fuel cell group 206. The controlcomponent 302 manages, instructs, or otherwise controls aspects ofelectricity generation by a set of fuel cell units 104-108 included inthe fuel cell group 206. The control component 302 includes a monitoringcomponent 308, and a load balancing component 310.

The monitoring component 308 examines, detects, or otherwise monitors aset of operational parameters for the fuel cell group 206. For example,in one implementation, the monitoring component 308 obtains, acquires,or otherwise receives a set of data regarding the operational parametersfrom a set of sensors 312 included in, or associated with, the fuel cellgroup 206. The operational parameters can include but are not limited toan electrical output capacity (e.g., Watts) of the fuel cell group 206,an electrical output capacity of a fuel cell unit 104-108, an electricaloutput capacity of a fuel cell stack 304, and/or an electrical outputcapacity of a fuel cell. The operational parameters can further includebut are not limited to data regarding air flow to respective fuel cellunits 104-108, data regarding fuel flow to respective units 104-108,and/or data regarding temperatures of respective fuel cell stacks 304and/or the fuel cell units 104-108.

Additionally, the monitoring component 308 triggers a modification, anupdate, or an adjustment of the output capacity of one or more of thefuel cell units 104-108 based in part on the set of operationalparameters (e.g., load balancing). For example, the monitoring component308 can determine that a second fuel cell unit 106 is not operating. Inresponse, to the second fuel cell unit 106 not operating, the monitoringcomponent 308 can trigger an adjustment (e.g., an increase) of theoutput capacity of a set of remaining fuel cell units (e.g., units 104and 108) in order to maintain the output capacity for the fuel cellgroup 206 (e.g., balance the output capacity between the remaining units104 and 108).

The load balancing component 310 modifies, updates, or otherwise adjustsone or more control parameters to balance the output capacity of thefuel cell units 104-108 included in the fuel cell group 206. The controlparameters can include but are not limited to an amount, or rate, of airprovided to a fuel cell unit 104-108 (e.g., an air flow set-point), anamount, or rate, of fuel provided to a fuel cell unit 104-108 (e.g., afuel flow set-point), and/or a temperature set-point for a fuel cellunit 104-108. For example, in one implementation, the load balancingcomponent 310 can increase a fuel flow set-point for the first fuel cellunit 104 in order to increase the output capacity of the fuel cell unit104. As discussed, the fuel cell units 104-108 operate at an optimalefficiency when provided with a predetermined amount of fuel and/or air(e.g., optimal fuel-air setting). For example, the fuel cell units104-108 can each produce 200 kW of electricity at an optimal fuel-airsetting. Increasing the fuel provided to the fuel cell unit 104 mayincrease the output capacity of the unit 104 from, for example, 200 kWto 230 kW.

The load balancing component 310 transmits, signals, or otherwiseprovides the updated control parameters to a switching component 314.The switching component 314 implements, effectuates, or otherwiseexecutes the control parameters. For example, in one implementation, theswitching component 314 can instruct a fuel cell source (e.g., source102B) to increase an amount of fuel provided to the associated fuel cellunit 106 based on the control parameters (discussed in greater detailwith regard to FIG. 6). It is to be appreciated that although theswitching component 314 is illustrated as being included in the fuelcell group 206 such implementation is not so limited. For example, theswitching component 314 can be included in the control component 302,and/or can be a stand-alone component.

FIG. 4 illustrates an example monitoring component 308 in accordancewith various aspects described in this disclosure. As discussed, themonitoring component 308 monitors a set of operational parameters for afuel cell group (e.g., group 206). The monitoring component 308 in FIG.4 includes a data component 402, a determination component 404, and atrigger component 406. The data component 402 obtains, acquires, orotherwise receives data regarding operational parameters from a set ofsensors 312 associated with the fuel cell group. The operationalparameters can include but are not limited to an electrical output(e.g., Watts) of the fuel cell group, an output of a fuel cell unit(unit), an output of a fuel cell stack (stack), and/or an output of afuel cell (cell). The operational parameters can further include but arenot limited to data regarding air flow to respective units included inthe fuel cell group, data regarding fuel flow to respective unitsincluded in the fuel cell group, and/or data regarding temperature ofthe units and/or of respective stacks included in the units.

The determination component 404 determines whether the operationalparameters satisfy a set of operational criteria. The operationalcriteria can include but are not limited to an output threshold (e.g.,group output threshold, unit output threshold, stack output threshold,and/or cell output threshold), an air flow threshold, a fuel flowthreshold, and/or a temperature threshold (e.g., unit temperaturethreshold, stack temperature threshold, and/or cell unit temperaturethreshold). For example, the determination component 404 can comparedata regarding output for a unit against a fuel unit output threshold,and determine whether the output for the unit satisfies the unit outputthreshold based on the comparison.

The trigger component 406 generates, initiates, or otherwise triggers anupdate, modification, or adjustment of the output capacity of one ormore of the units (e.g., units 104-108) based in part on a determinationby the determination component 404 that one or more operationalparameters do not satisfy the set of operational criteria. For example,if an output of a first unit (e.g., 0 watts) does not satisfy a unitoutput threshold (e.g., 200 watts), then the trigger component 406 cantrigger an adjustment of the output capacity for a set of other units(e.g., load balancing).

Referring to FIG. 5, illustrated is an example load balancing component310 in accordance with various aspects described in this disclosure. Asdiscussed, the load balancing component 310 adjusts a set of controlparameters to balance the output of a set of fuel cell units (units)included in a fuel cell group (group). The control parameters caninclude but are not limited to a rate of air provided to a unit (e.g.,air flow set-point), a rate of fuel provided to a unit (e.g., fuel flowset-point), and/or a temperature set-point for a group and/or unit. Forexample, a group can include six units that each produce 200 kW at anoptimum air-fuel setting, for a total of 1200 kW. If a first unit goes,or is taken, offline, then the load balancing component 310 can adjustsa set of control parameters for the remaining five units to compensatefor the first unit. For instance, the load balancing component 310 canincrease the production or output capacity of the remaining five to 240kW (e.g., 1200 kW total) by increasing the fuel provided to theremaining five units.

The load balancing component 310 in FIG. 5 includes an instructioncomponent 502, and an interface component 504. The instruction component502 transmits, signals, or otherwise provides the updated set of controlparameters to a switching component 314 to execute the updated set ofcontrol parameters. For example, the load balancing component 310 canprovide a temperature set-point to the switching component 314, and theswitching component 314 can execute the temperature set-point bycontrolling one or more associated thermostats. As an additional oralternative example, in one implementation, the instruction component502 can provide updated control parameters to associated equipment. Forinstance, the instruction component 502 can provide the temperatureset-point to the one or more associated thermostats.

The interface component 504 provides for modification, interaction, oradjustment of control parameters by a user 508. The interface component504 includes any suitable and/or necessary adapters, connectors,channels, communication paths, etc. to integrate the load balancingcomponent 310 into virtually any operating and/or database system(s).Moreover, the interface component 504 can provide various adapters,connectors, channels, communication paths, etc., that provide forinteraction with the system load balancing component 504. For example,the user 508 (e.g., operator, etc.) can adjust the control parameters(e.g., using a computing device) to take a fuel cell unit offline formaintenance. The interface component 504 includes an input component 506that obtains, acquires, or otherwise receives the control parametersfrom the user 508. The control parameters can include explicit userinputs (e.g., configuration selections, question/answer, etc.) such asfrom mouse selections, keyboard selections, touch screen selections,and/or speech. Additionally or alternatively, inputs can also includedata uploads, wherein a data upload is a transfer of data from the user508 or a third party source (e.g. computer or a computer readablemedium), to the input component 506.

Turning to FIG. 6 illustrated is an example switching component 314 inaccordance with various aspects described in this disclosure. Theswitching component 314 in FIG. 6 includes a reception component 602, afuel flow set-point component 604, an air set-point component 606, atemperature set-point component 608, and an alarm component 610. Thereception component 602 obtains, acquires, or otherwise receives a setof control parameters, for example, from a load balancing component 310.As discussed, the switching component 314 executes the set of controlparameters. The control parameters can include but are not limited to arate of air provided to a fuel cell unit (an air flow set-point), a rateof fuel provided to a fuel cell unit (a fuel flow set-point), and/or atemperature set-point for a fuel cell group and/or unit.

The fuel flow set-point component 604 instructs, manages, or otherwisecontrols a fuel flow controller 612 associated with a fuel flowset-point. The fuel flow controller 612 can include but is not limitedto a fuel flow valve and/or fuel flow pump. For example, the receptioncomponent 602 can receive a fuel flow set-point (e.g., from the loadbalancing component 310) for a first fuel cell unit, and the fuelset-point component 604 can control a fuel pump (e.g., fuel flowcontroller 612) that regulates the flow of fuel from a fuel source tothe first fuel cell unit using the fuel flow set-point.

The air set-point component 606 instructs, manages, or otherwisecontrols an air flow controller 614 associated with an air flowset-point. The air flow controller 614 can include but is not limited toan air flow valve and/or air flow pump. For example, the receptioncomponent 602 can receive an air flow set-point (e.g., from the loadbalancing component 310) for the first fuel cell unit, and the airset-point component 606 can control a valve that regulates the flow ofair to the first fuel cell unit using the air flow set-point.

The temperature set-point component 608 instructs, manages, or otherwisecontrols a temperature controller 616 associated with a temperatureset-point. The temperature controller 616 can include but is not limitedto a thermostat and/or a coolant pump. For example, the receptioncomponent 602 can receive a temperature set-point (e.g., from the loadbalancing component 310) for the first fuel cell unit, and thetemperature controller 616 can control a thermostat that regulates atemperature of the first fuel cell unit using the temperature set-point.

The alarm component 610 obtains, acquires, or otherwise receives analarm (e.g., emergency stop command) from a set of sensors 312associated with a fuel cell unit (e.g., unit 104-108) and/or a user 508.In addition, the alarm component 610 adjusts a set of control parametersbased on the alarm. For example, in one implementation, the alarmcomponent 610 can receive an alarm from the set of sensors 312 that amalfunction in a first fuel cell unit has occurred and/or or isoccurring, and the alarm component 610 can adjust the fuel flowset-point, air-flow set-point, and/or temperature set-point for thefirst fuel cell unit based on the alarm. For instance, the alarmcomponent 610, in order to shutdown the first fuel cell unit, can adjustthe fuel flow set-point for the first fuel cell unit to zero or null. Asan additional or alternative example, in response to noticing adangerous situation, the user 508 can trigger an emergency shutdown. Forinstance, the user 508 can activate an emergency shutdown control (e.g.,press a button, pull an alarm, etc.). In response to the user 508triggering the emergency shutdown, the alarm component 610 can adjustthe control parameters to shutdown the associated fuel cell unit or fuelcell group.

Non-Limiting Examples of Methods for Module Level Redundancy for FuelCell Systems

FIGS. 7-9 illustrate various methodologies in accordance with thedisclosed subject matter. While, for purposes of simplicity ofexplanation, the methodologies are shown and described as a series ofacts, the disclosed subject matter is not limited by the order of acts,as some acts may occur in different orders and/or concurrently withother acts from that shown and described herein. For example, thoseskilled in the art will understand and appreciate that a methodology canalternatively be represented as a series of interrelated states orevents, such as in a state diagram. Moreover, not all illustrated actsmay be required to implement a methodology in accordance with thedisclosed subject matter. Additionally, it is to be appreciated that themethodologies disclosed in this disclosure are capable of being storedon an article of manufacture to facilitate transporting and transferringsuch methodologies to computers or other computing devices.

Referring now to FIG. 7, illustrated is an example methodology 700 formodule level redundancy for fuel cell systems in accordance with variousaspects described in this disclosure. At reference numeral 702, a set ofoperational parameters for a fuel cell group are monitored (e.g., usingthe monitoring component 308). For example, in one implementation, a setof data regarding the set of operational parameters is received (e.g.,using the data component 402) from a set of sensors (e.g., sensors 312)associated with a fuel cell group. The operational parameters caninclude but are not limited to an electrical output capacity (outputcapacity, output, or Watts) of the fuel cell group, a fuel cell unitincluded in the fuel cell group, a fuel cell stack included in the fuelcell unit, and/or a fuel cell included in the fuel cell stack. Theoperational parameters can further include data regarding air flow torespective fuel cell units, data regarding fuel flow to respectiveunits, and/or data regarding temperatures of respective fuel cell stacksand/or fuel cell units.

At reference numeral 704, a determination is made whether theoperational parameters satisfy a set of operational criteria (e.g.,using the determination component 404). The operational criteria caninclude but are not limited to an output threshold (e.g., fuel cellgroup output threshold, a fuel cell unit output threshold, fuel cellstack output threshold, and/or fuel cell output threshold), an air flowthreshold, a fuel flow threshold, and/or a temperature threshold (e.g.,fuel cell stack temperature or fuel cell unit temperature). For example,data regarding output for a fuel cell unit can be compared against afuel cell unit output threshold, and, based on the comparison, adetermination can be made whether the output for the fuel cell unitsatisfies the fuel cell unit output threshold.

At reference numeral 706, if it is determined that the set ofoperational parameters do not satisfy the set operational criteria (N at704), then a load balancing is triggered (e.g., using the triggercomponent 406). For example, if an output capacity of a first fuel cellunit (e.g., 0 watts) does not satisfy a fuel cell unit output capacitythreshold (e.g., 200 watts), then the output capacity of a set of fuelcell units included in the fuel cell group is balanced to maintain theoutput capacity for the fuel cell group. Returning to reference numeral704, if it is determined that the set of operational parameters dosatisfy the set of operational criteria, then the methodology returns toreference numeral 702.

At reference numeral 708, in response to a load balancing beingtriggered, a subset of control parameters included in a set of controlparameters are updated (e.g., using the load balancing component 310) tobalance the output capacity of the fuel cell units in order to maintainthe output capacity of the fuel cell group. The control parameters caninclude but are not limited to an amount, or rate, of air provided to afuel cell unit (e.g., an air flow set-point), an amount, or rate, offuel provided to a fuel cell unit (e.g., a fuel flow set-point), and/ora temperature set-point for a fuel cell unit. For example, in oneimplementation, the amount of fuel provided to a first fuel cell unitincluded in a fuel cell group can be increased in order to increase theoutput capacity of the first fuel cell unit. As discussed, fuel cellunits operate at an optimal efficiency when provided with apredetermined amount of fuel and/or air (e.g., optimal fuel-airsetting). For example, each fuel cell unit in a fuel cell group can eachproduce 200 kW of electricity at an optimal fuel-air setting. Modifyingan amount of fuel and/or air provided to a first fuel cell unit canincrease the output capacity of the first fuel cell unit to, or example,240 kW.

At reference numeral 710, the adjusted control parameters are executed(e.g., using the switching component 314) to balance the load betweenthe fuel cell units in the fuel cell group. For example, a fuel cellsource can be instructed to increase an amount of fuel provided to anassociated fuel cell unit based on the control parameters. Aspects ofthe innovation are limited to a quantity of fuel cell groups, or fuelcell units included in the fuel cell groups. For example, in oneimplementation, a quantity of Y fuel cell groups, can include one fuelcell unit from each of X sets of fuel cell units, where X and Y areintegers. Each of the X sets of fuel cell units can receive fuel from aseparate fuel cell source (discussed in greater detail with reference toFIG. 2).

FIG. 8 illustrates an example methodology 800 for module levelredundancy for fuel cell systems in accordance with various aspectsdescribed in this disclosure. At reference numeral 802, user inputregarding a first fuel cell unit included in a fuel cell group isreceived (e.g., using the input component 506). For example, a user canprovided a set of commands to take the first fuel cell unit offline formaintenance or service. The inputs can include explicit user inputs(e.g., configuration selections, question/answer, etc.) such as frommouse selections, keyboard selections, and/or speech. Additionally oralternatively, the inputs can also include data uploads, wherein a dataupload is a transfer of data from the user or a third party source (e.g.computer or a computer readable medium).

At reference numeral 804, a set of control parameters for the fuel cellgroup are updated based at least in part on the user input (e.g., usingthe load balancing component 310). The control parameters can includebut are not limited to a set of air flow rates for respective fuel cellunits included in the fuel cell group (e.g., air flow set-points), a setof fuel flow rates for respective fuel cell units in the fuel cell group(e.g., fuel flow set-points), and/or a set of temperatures forrespective fuel cell units in the fuel cell group and/or the fuel cellgroup (e.g., temperature set-points). For example, a fuel cell group caninclude six fuel cell units that each produce 200 kW at an optimumair-fuel setting, for a total of 1200 kW. If the user input received atreference numeral 802 includes instructions to take a first fuel cellunit offline, then the set of control parameters for the fuel cell groupcan be adjusted such that remaining five fuel cell units compensate forthe first fuel cell unit. For instance, the set of control parameterscan be adjusted to increase the production of the remaining five fuelcell units to 240 kW each (e.g., 1200 kW total) by increasing the fuelflow rate for each of the remaining five fuel cell units.

At reference numeral 806, the updated set of control parameters areimplemented (e.g., using the switching component 806). For example, acontrol parameter regarding fuel flow can be implemented by controllinga fuel flow valve and/or fuel flow pump (e.g., using the fuel set-pointcomponent 604) associated with the control parameter, a controlparameter regarding air flow can be implemented by controlling an airflow valve and/or air pump (e.g., using the air set-point component 606)associated with the control parameter, and a control parameter regardingtemperature control can be implemented by controlling a thermostatand/or a coolant pump (e.g., using the temperature set-point component608) associated with the control parameter.

FIG. 9 illustrates an example methodology 900 for module levelredundancy for fuel cell systems in accordance with various aspectsdescribed in this disclosure. At reference numeral 902, a rate of fuelprovided from a first fuel source to a first fuel cell unit included ina fuel cell group is managed, regulated, or otherwise controlled (e.g.,using the load balancing component 310). The fuel can include but is notlimited to natural gas, compressed natural gas (CNG), and/or liquidnatural gas (LNG). At reference numeral 904, a rate of fuel providedfrom a second fuel source to a second fuel cell unit included in thefuel cell group is controlled (e.g., using the load balancing component310). Providing separate fuel sources for each of the fuel cell units(e.g., the first fuel cell unit and second fuel cell unit)compartmentalizes the fuel cell units, and enables the fuel cell groupto provide uninterrupted service to a load in the event of a disruptionof a fuel supply, and/or a fuel cell unit going offline or generatingless than optimal output.

At reference numeral 906, a determination is made whether the first fuelcell unit included in the fuel cell group is not functioning, out oforder, or otherwise offline. For example, the first fuel cell unit mayhave been taken offline by an operator for maintenance (e.g., using theinterface component 504). As an additional or alternative example, thefirst fuel cell unit or the first fuel source may have experienced afailure causing the first fuel cell unit to be shutdown (e.g., using thealarm component 610). At reference numeral 908, if it is determined thatthe first fuel cell unit is offline (Y at 904), then a rate of fuelprovided (e.g., a fuel flow set-point) to the second fuel cell unit isadjusted to compensate for the first fuel cell unit (e.g., using theload balancing component 310). The fuel cell units operate at an optimalefficiency when provided with a predetermined amount of fuel and/or air(e.g., optimal fuel-air setting). For example, the fuel cell units caneach produce 200 kW of electricity at the optimal fuel-air setting.Adjusting the fuel and/or air provided to a fuel cell unit can increasethe electrical output of the fuel cell unit. For instance, increasingthe fuel provided to a unit may increase the output of the unit (e.g.,from 200 kW to 230 kW). Returning to reference numeral 904, if it isdetermined that the first fuel cell unit is not offline (N at 904), thenthe methodology returns to reference numeral 902.

Exemplary Networked and Distributed Environments

One of ordinary skill in the art can appreciate that the variousembodiments described herein can be implemented in connection with anycomputer or other client or server device, which can be deployed as partof a computer network or in a distributed computing environment, and canbe connected to any kind of data store where media may be found. In thisregard, the various implementations described herein can be implementedin any computer system or environment having any number of memory orstorage units, and any number of applications and processes occurringacross any number of storage units. This includes, but is not limitedto, an environment with server computers and client computers deployedin a network environment or a distributed computing environment, havingremote or local storage.

Distributed computing provides sharing of computer resources andservices by communicative exchange among computing devices and systems.These resources and services include the exchange of information, cachestorage and disk storage for objects, such as files. These resources andservices also include the sharing of processing power across multipleprocessing units for load balancing, expansion of resources,specialization of processing, and the like. Distributed computing takesadvantage of network connectivity, allowing clients to leverage theircollective power to benefit the entire enterprise. In this regard, avariety of devices may have applications, objects or resources that mayparticipate in the various implementations of this disclosure.

FIG. 10 provides a schematic diagram of an exemplary networked ordistributed computing environment. The distributed computing environmentcomprises computing objects 1010, 1012, etc. and computing objects ordevices 1020, 1022, 1024, 1026, 1028, etc., which may include programs,methods, data stores, programmable logic, etc., as represented byapplications 1030, 1032, 1034, 1036, 1038. It can be appreciated thatcomputing objects 1010, 1012, etc. and computing objects or devices1020, 1022, 1024, 1026, 1028, etc. may comprise different devices, suchas personal data assistants (PDAs), audio/video devices, mobile phones,MP3 players, personal computers, tablets, laptops, etc.

Each computing object 1010, 1012, etc. and computing objects or devices1020, 1022, 1024, 1026, 1028, etc. can communicate with one or moreother computing objects 1010, 1012, etc. and computing objects ordevices 1020, 1022, 1024, 1026, 1028, etc. by way of the communicationsnetwork 1040, either directly or indirectly. Even though illustrated asa single element in FIG. 10, network 1040 may comprise other computingobjects and computing devices that provide services to the system ofFIG. 10, and/or may represent multiple interconnected networks, whichare not shown. Each computing object 1010, 1012, etc. or computingobjects or devices 1020, 1022, 1024, 1026, 1028, etc. can also containan application, such as applications 1030, 1032, 1034, 1036, 1038, thatmight make use of an API, or other object, software, firmware and/orhardware, suitable for communication with or implementation of thevarious implementations of this disclosure.

There are a variety of systems, components, and network configurationsthat support distributed computing environments. For example, computingsystems can be connected together by wired or wireless systems, by localnetworks or widely distributed networks. Currently, many networks arecoupled to the Internet, which provides an infrastructure for widelydistributed computing and encompasses many different networks, thoughany network infrastructure can be used for exemplary communications madeincident to the systems as described in various implementations.

Thus, a host of network topologies and network infrastructures, such asclient/server, peer-to-peer, or hybrid architectures, can be employed.The “client” is a member of a class or group that uses the services ofanother class or group to which it is not related. A client can be aprocess, e.g., roughly a set of instructions or tasks, that requests aservice provided by another program or process. The client may be or usea process that utilizes the requested service without having to “know”any working details about the other program or the service itself.

In a client/server architecture, particularly a networked system, aclient is usually a computer that accesses shared network resourcesprovided by another computer, e.g., a server. In the illustration ofFIG. 10, as a non-limiting example, computing objects or devices 1020,1022, 1024, 1026, 1028, etc. can be thought of as clients and computingobjects 1010, 1012, etc. can be thought of as servers where computingobjects 1010, 1012, etc. provide data services, such as receiving datafrom client computing objects or devices 1020, 1022, 1024, 1026, 1028,etc., storing of data, processing of data, transmitting data to clientcomputing objects or devices 1020, 1022, 1024, 1026, 1028, etc.,although any computer can be considered a client, a server, or both,depending on the circumstances.

A server is typically a remote computer system accessible over a remoteor local network, such as the Internet or wireless networkinfrastructures. The client process may be active in a first computersystem, and the server process may be active in a second computersystem, communicating with one another over a communications medium,thus providing distributed functionality and allowing multiple clientsto take advantage of the information-gathering capabilities of theserver.

In a network environment in which the communications network/bus 1040 isthe Internet, for example, the computing objects 1010, 1012, etc. can beWeb servers with which the client computing objects or devices 1020,1022, 1024, 1026, 1028, etc. communicate via any of a number of knownprotocols, such as the hypertext transfer protocol (HTTP). Objects 1010,1012, etc. may also serve as client computing objects or devices 1020,1022, 1024, 1026, 1028, etc., as may be characteristic of a distributedcomputing environment.

Exemplary Computing Device

As mentioned, advantageously, the techniques described herein can beapplied to any device suitable for implementing various implementationsdescribed herein. Handheld, portable and other computing devices andcomputing objects of all kinds are contemplated for use in connectionwith the various implementations, e.g., anywhere that a device may wishto read or write transactions from or to a data store. Accordingly, thebelow general purpose remote computer described below in FIG. 11 is butone example of a computing device.

Although not required, embodiments can partly be implemented via anoperating system, for use by a developer of services for a device orobject, and/or included within application software that operates toperform one or more functional aspects of the various implementationsdescribed herein. Software may be described in the general context ofcomputer executable instructions, such as program modules, beingexecuted by one or more computers, such as client workstations, serversor other devices. Those skilled in the art will appreciate that computersystems have a variety of configurations and protocols that can be usedto communicate data, and thus, no particular configuration or protocolis to be considered limiting.

FIG. 11 thus illustrates an example of a suitable computing systemenvironment 1100 in which one or aspects of the embodiments describedherein can be implemented, although as made clear above, the computingsystem environment 1100 is only one example of a suitable computingenvironment and is not intended to suggest any limitation as to scope ofuse or functionality. Neither is the computing environment 1100 beinterpreted as having any dependency or requirement relating to any oneor combination of components illustrated in the exemplary operatingenvironment 1100.

With reference to FIG. 11, an exemplary remote device for implementingone or more embodiments includes a general purpose computing device inthe form of a computer 1110. Components of computer 1110 may include,but are not limited to, a processing unit 1120, a system memory 1130,and a system bus 1122 that couples various system components includingthe system memory to the processing unit 1120. In one or moreimplementations, computer 1110 can be used to implement one or more ofthe systems or components described or shown herein in connection withFIGS. 1-6.

Computer 1110 includes a variety of computer readable media and can beany available media that can be accessed by computer 1110. The systemmemory 1130 may include computer storage media in the form of volatileand/or nonvolatile memory such as read only memory (ROM) and/or randomaccess memory (RAM). By way of example, and not limitation, memory 1130may also include an operating system, application programs, otherprogram modules, and program data.

A user can enter commands and information into the computer 1110 throughinput devices 1140. A monitor or other type of display device is alsoconnected to the system bus 1122 via an interface, such as outputinterface 1150. In addition to a monitor, computers can also includeother peripheral output devices such as speakers and a printer, whichmay be connected through output interface 1150. An encoder 1145 is alsoconnected to the system bus 1122. The encoder 1145 enables compressionand/or decompression of digital data, such as digital video. The encoder1145 accepts video data in, and converts video data to, virtually anydigital format, including but not limited to MPEG-1 and 2 (MPG),QUICKTIME™ (MOV), REALMEDIA™, WINDOWS MEDIA™ (WMV), H.264 (MP4), DIVX™and Xvid (AVI), FLASH VIDEO™ (FLV), Matroska Multimedia Container (MKV),Theora (OGG), 3GP, Video Object (VOB), and/or WebM™.

The computer 1110 may operate in a networked or distributed environmentusing logical connections to one or more other remote computers, such asremote computer 1170. The remote computer 1170 may be a personalcomputer, a server, a router, a network PC, a peer device or othercommon network node, or any other remote media consumption ortransmission device, and may include any or all of the elementsdescribed above relative to the computer 1110. The logical connectionsdepicted in FIG. 11 include a network 1172, such local area network(LAN) or a wide area network (WAN), but may also include othernetworks/buses. Such networking environments are commonplace in homes,offices, enterprise-wide computer networks, intranets and the Internet.

As mentioned above, while exemplary implementations have been describedin connection with various computing devices and network architectures,the underlying concepts may be applied to any network system and anycomputing device or system in which it is desirable to publish orconsume media in a flexible way.

The word “exemplary” is used herein to mean serving as an example,instance, or illustration. For the avoidance of doubt, this matterdisclosed herein is not limited by such examples. In addition, anyaspect or design described herein as “exemplary” is not necessarily tobe construed as preferred or advantageous over other aspects or designs,nor is it meant to preclude equivalent exemplary structures andtechniques known to those of ordinary skill in the art. Furthermore, tothe extent that the terms “includes,” “has,” “contains,” and othersimilar words are used in either the detailed description or the claims,for the avoidance of doubt, such terms are intended to be inclusive in amanner similar to the term “comprising” as an open transition wordwithout precluding any additional or other elements. Furthermore,reference throughout this disclosure to “one implementation” or “animplementation” or “one embodiment” or “an embodiment” means that aparticular feature, structure, or characteristic described in connectionwith the implementation or embodiment is included in at least oneimplementation or embodiment. Thus, the appearances of the phrase “inone implementation” or “in an implementation” or “in one embodiment” or“in an embodiment” in various places throughout this specification arenot necessarily all referring to the same implementation or embodiment.

Computing devices typically include a variety of media, which caninclude computer-readable storage media. Computer-readable storage mediacan be any available storage media that can be accessed by the computer,is typically of a non-transitory nature, and can include both volatileand nonvolatile media, removable and non-removable media. By way ofexample, and not limitation, computer-readable storage media can beimplemented in connection with any method or technology for storage ofinformation such as computer-readable instructions, program modules,structured data, or unstructured data. Computer-readable storage mediacan include, but are not limited to, RAM, ROM, EEPROM, flash memory orother memory technology, CD-ROM, digital versatile disk (DVD) or otheroptical disk storage, magnetic cassettes, magnetic tape, magnetic diskstorage or other magnetic storage devices, or other tangible and/ornon-transitory media which can be used to store desired information.Computer-readable storage media can be accessed by one or more local orremote computing devices, e.g., via access requests, queries or otherdata retrieval protocols, for a variety of operations with respect tothe information stored by the medium.

As mentioned, the various techniques described herein may be implementedin connection with hardware or software or, where appropriate, with acombination of both. As used herein, the terms “component,” “system” andthe like are likewise intended to refer to a computer-related entity,either hardware, a combination of hardware and software, software, orsoftware in execution. For example, a component may be, but is notlimited to being, a process running on a processor, a processor, anobject, an executable, a thread of execution, a program, and/or acomputer. By way of illustration, both an application running oncomputer and the computer can be a component. One or more components mayreside within a process and/or thread of execution and a component maybe localized on one computer and/or distributed between two or morecomputers. Further, a component can come in the form of speciallydesigned hardware; generalized hardware made specialized by theexecution of software thereon that enables the hardware to performspecific function (e.g., coding and/or decoding); software stored on acomputer readable medium; or a combination thereof.

The aforementioned systems have been described with respect tointeraction between several components. It can be appreciated that suchsystems and components can include those components or specifiedsub-components, some of the specified components or sub-components,and/or additional components, and according to various permutations andcombinations of the foregoing. Sub-components can also be implemented ascomponents communicatively coupled to other components rather thanincluded within parent components (hierarchical). Additionally, it is tobe noted that one or more components may be combined into a singlecomponent providing aggregate functionality or divided into severalseparate sub-components, and that any one or more middle layers, such asa management layer, may be provided to communicatively couple to suchsub-components in order to provide integrated functionality. Anycomponents described herein may also interact with one or more othercomponents not specifically described herein but generally known bythose of skill in the art.

In view of the exemplary systems described above, methodologies that maybe implemented in accordance with the described subject matter will bebetter appreciated with reference to the flowcharts of the variousfigures. While for purposes of simplicity of explanation, themethodologies are shown and described as a series of blocks, the claimedsubject matter is not limited by the order of the blocks, as some blocksmay occur in different orders and/or concurrently with other blocks fromwhat is depicted and described herein. Where non-sequential, orbranched, flow is illustrated via flowchart, it can be appreciated thatvarious other branches, flow paths, and orders of the blocks, may beimplemented which achieve the same or a similar result. Moreover, notall illustrated blocks may be required to implement the methodologiesdescribed hereinafter.

In addition to the various implementations described herein, it is to beunderstood that other similar implementations can be used ormodifications and additions can be made to the describedimplementation(s) for performing the same or equivalent function of thecorresponding implementation(s) without deviating there from. Stillfurther, multiple processing chips or multiple devices can share theperformance of one or more functions described herein, and similarly,storage can be effected across a plurality of devices. Accordingly, theinvention is not to be limited to any single implementation, but rathercan be construed in breadth, spirit and scope in accordance with theappended claims.

What is claimed is:
 1. A method implemented by data processingapparatus, the method comprising: controlling an amount of fuel providedby a first fuel source to a first cell unit that is included in a fuelcell group, wherein the fuel cell group also includes a second cell unitpowered by a second fuel source, and wherein the first fuel source doesnot provide fuel to other fuel cell units in the fuel cell group, andthe second fuel source does not provide fuel to other fuel cell units inthe fuel cell group; determining, by the data processing apparatus, thatthe first fuel cell unit is offline; and in response to determining thefirst fuel cell unit is offline, increasing an amount of fuel providedto a second fuel cell unit in the fuel cell group by the second fuelsource.
 2. The method of claim 1, further comprising: determining, bythe data processing apparatus, that an output of the first fuel cellunit is less than an output threshold; and in response to determiningthat the output of first fuel cell unit is less than the outputthreshold, increasing the amount of the fuel provided to the second fuelcell unit.
 3. The method of claim 2, wherein the output thresholdincludes at least one of a fuel cell stack output capacity threshold, afuel cell unit output capacity threshold, a fuel flow threshold, a fuelcell output capacity threshold, or a fuel cell unit temperaturethreshold.
 4. The method of claim 1, further comprising adjusting anamount of air flow to the second fuel cell unit based, at least in part,on an output of the second fuel cell unit and the amount of fuelprovided to the second fuel cell unit.
 5. The method of claim 1, whereinthe first fuel cell unit and the second fuel cell unit respectivelyinclude a first fuel cell stack and second fuel cell stack.
 6. Themethod of claim 5, wherein the first cell stack and the second fuel cellstack respectively include a first gas powered fuel cell and a secondgas powered fuel cell.
 7. The method of claim 6, wherein the first gaspowered fuel cell and the second gas powered fuel cell respectivelyinclude a first solid oxide fuel cell and second solid oxide fuel cell.8. A system, comprising: a data processing apparatus; and anon-transitory memory storage system in data communication with the dataprocessing apparatus and including instructions executable by the dataprocessing apparatus and that upon such execution cause the dataprocessing apparatus to perform operations comprising: comprising:control an amount of fuel provided by a first fuel source to a firstcell unit that is included in a fuel cell group, wherein the fuel cellgroup also includes a second cell unit powered by a second fuel source,and wherein the first fuel source does not provide fuel to other fuelcell units in the fuel cell group, and the second fuel source does notprovide fuel to other fuel cell units in the fuel cell group; determine,by the data processing apparatus, that the first fuel cell unit isoffline; and in response to determining the first fuel cell unit isoffline, increase an amount of fuel provided to a second fuel cell unitin the fuel cell group by the second fuel source.
 9. The system of claim8, further comprising: determining, by the data processing apparatus,that an output of the first fuel cell unit is less than an outputthreshold; and in response to determining that the output of first fuelcell unit is less than the output threshold, increasing the amount ofthe fuel provided to the second fuel cell unit.
 10. The system of claim9, wherein the output threshold includes at least one of a fuel cellstack output capacity threshold, a fuel cell unit output capacitythreshold, a fuel flow threshold, a fuel cell output capacity threshold,or a fuel cell unit temperature threshold.
 11. The system of claim 8,further comprising adjusting an amount of air flow to the second fuelcell unit based, at least in part, on an output of the second fuel cellunit and the amount of fuel provided to the second fuel cell unit. 12.The system of claim 8, wherein the first fuel cell unit and the secondfuel cell unit respectively include a first fuel cell stack and secondfuel cell stack.
 13. The system of claim 12, wherein the first cellstack and the second fuel cell stack respectively include a first gaspowered fuel cell and a second gas powered fuel cell.
 14. The system ofclaim 13, wherein the first gas powered fuel cell and the second gaspowered fuel cell respectively include a first solid oxide fuel cell andsecond solid oxide fuel cell.
 15. A non-transitory memory storage systemstoring instructions executable by a data processing apparatus and thatupon such execution cause the data processing apparatus to performoperations comprising: controlling an amount of fuel provided by a firstfuel source to a first cell unit that is included in a fuel cell group,wherein the fuel cell group also includes a second cell unit powered bya second fuel source, and wherein the first fuel source does not providefuel to other fuel cell units in the fuel cell group, and the secondfuel source does not provide fuel to other fuel cell units in the fuelcell group; determining, by the data processing apparatus, that thefirst fuel cell unit is offline; and in response to determining thefirst fuel cell unit is offline, increasing an amount of fuel providedto a second fuel cell unit in the fuel cell group by the second fuelsource.
 16. The non-transitory memory storage system of claim 15,further comprising: determining, by the data processing apparatus, thatan output of the first fuel cell unit is less than an output threshold;and in response to determining that the output of first fuel cell unitis less than the output threshold, increasing the amount of the fuelprovided to the second fuel cell unit.
 17. The non-transitory memorystorage system of claim 16, wherein the output threshold includes atleast one of a fuel cell stack output capacity threshold, a fuel cellunit output capacity threshold, a fuel flow threshold, a fuel celloutput capacity threshold, or a fuel cell unit temperature threshold.18. The non-transitory memory storage system of claim 15, furthercomprising adjusting an amount of air flow to the second fuel cell unitbased, at least in part, on an output of the second fuel cell unit andthe amount of fuel provided to the second fuel cell unit.
 19. Thenon-transitory memory storage system of claim 15, wherein the first fuelcell unit and the second fuel cell unit respectively include a firstfuel cell stack and second fuel cell stack.
 20. The non-transitorymemory storage system of claim 19, wherein the first cell stack and thesecond fuel cell stack respectively include a first gas powered fuelcell and a second gas powered fuel cell.
 21. The non-transitory memorystorage system of claim 20, wherein the first gas powered fuel cell andthe second gas powered fuel cell respectively include a first solidoxide fuel cell and second solid oxide fuel cell.